package ai.assist.common.vo.admin;

import ai.assist.common.businesss.mongo.entity.SysDept;
import ai.assist.common.businesss.mongo.entity.SysRole;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.Set;

/**
 * 系统用户
 *
 * @TableName sys_user
 */
@ApiModel
@Data
public class SysUserInfoVO implements Serializable {

    @ApiModelProperty("用户id")
    private Long id;

    @ApiModelProperty("账户名称")
    private String username;

    @ApiModelProperty("手机号码")
    private String phone;

    @ApiModelProperty("办公电话")
    private String telephone;

    @ApiModelProperty("部门信息")
    private SysDept dept;

    @ApiModelProperty("按钮权限列表")
    private Set<String> perms;

    @ApiModelProperty("角色列表")
    private List<SysRole> roles;

    @ApiModelProperty("真实名称")
    private String realName;

    @ApiModelProperty("昵称")
    private String nickName;

    @ApiModelProperty(" 邮箱")
    private String email;

    @ApiModelProperty(" 账户状态(1.正常 2.锁定 )")
    private Integer status;

    @ApiModelProperty("性别(1.男 2.女)")
    private Integer sex;

    @ApiModelProperty("更新时间")
    private Date updateTime;

    @ApiModelProperty("创建时间")
    private Date createTime;

    @ApiModelProperty("包含部门编码列表(从小到大)")
    private List<Long> deptNos;

    @ApiModelProperty
    private Long parentNo;

    @ApiModelProperty
    private Long unitNo;

    @ApiModelProperty("菜单")
    private List<PermissionRespNode> permissionNodes;
}
